package net.vmiranda.jeds.core.tareas;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;


/**
 * The persistent class for the tareas database table.
 * 
 */
@Entity
@Table(name="tareas")
public class Tarea implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private Integer idTarea;


	
	private int idProyecto;	
	
	private int idCategoria;
	
	private String descripcionTarea;

    @Temporal( TemporalType.TIMESTAMP)
	private Date fechaAlta;

    @Temporal( TemporalType.TIMESTAMP)
	private Date fechaModificacion;

	private Float horasPlanificadas;

	private Float horasUtilizadas;

	private int idEstado;

	private String idUsuario;

	private String idUsuarioAlta;

	private String nombreTarea;	

	private Integer progreso;
	
	@Enumerated(EnumType.STRING)
	private Prioridad prioridad;
	

	public Tarea() {
    }

    public Integer getIdTarea() {
		return this.idTarea;
	}
	public void setIdTarea(Integer idTarea) {
		this.idTarea = idTarea;
	}

	
	public int getIdProyecto() {
		return this.idProyecto;
	}
	public void setIdProyecto(int idProyecto) {
		this.idProyecto = idProyecto;
	}
	
	public int getIdCategoria() {
		return this.idCategoria;
	}
	public void setIdCategoria(int idCategoria) {
		this.idCategoria = idCategoria;
		
	}
	
	public String getDescripcionTarea() {
		return this.descripcionTarea;
	}

	public void setDescripcionTarea(String descripcionTarea) {
		this.descripcionTarea = descripcionTarea;
	}

	public Date getFechaAlta() {
		return this.fechaAlta;
	}

	public void setFechaAlta(Date fechaAlta) {
		this.fechaAlta = fechaAlta;
	}

	public Date getFechaModificacion() {
		return this.fechaModificacion;
	}

	public void setFechaModificacion(Date fechaModificacion) {
		this.fechaModificacion = fechaModificacion;
	}

	public Float getHorasPlanificadas() {
		return this.horasPlanificadas;
	}

	public void setHorasPlanificadas(Float horasPlanificadas) {
		this.horasPlanificadas = horasPlanificadas;
	}

	public Float getHorasUtilizadas() {
		return this.horasUtilizadas;
	}

	public void setHorasUtilizadas(Float horasUtilizadas) {
		this.horasUtilizadas = horasUtilizadas;
	}

	public int getIdEstado() {
		return this.idEstado;
	}

	public void setIdEstado(int idEstado) {
		this.idEstado = idEstado;
	}

	public String getIdUsuario() {
		return this.idUsuario;
	}

	public void setIdUsuario(String idUsuario) {
		this.idUsuario = idUsuario;
	}

	public String getIdUsuarioAlta() {
		return this.idUsuarioAlta;
	}

	public void setIdUsuarioAlta(String idUsuarioAlta) {
		this.idUsuarioAlta = idUsuarioAlta;
	}

	public String getNombreTarea() {
		return this.nombreTarea;
	}

	public void setNombreTarea(String nombreTarea) {
		this.nombreTarea = nombreTarea;
	}
	
	@Override
	public String toString(){
		return nombreTarea;
	}
	
	 public Integer getProgreso() {
		return progreso;
	}

	public void setProgreso(Integer progreso) {
		this.progreso = progreso;
	}

	public Prioridad getPrioridad() {
		return prioridad;
	}

	public void setPrioridad(Prioridad prioridad) {
		this.prioridad = prioridad;
	}

}